package so.ifl.servcie;

import java.util.List;
import java.util.Map;

/**
 *create by aaron.lu
 *create at 2012-5-3 下午2:37:42
 *<mailto: atyuan.lu@gmail.com>
 **/
public interface ReportService {
	
	/**
	 * 创建报表<通过学员进度>
	 * create by aaron.lu
	 * create at 2012-5-3 下午10:19:08
	 * <mailto: atyuan.lu@gmail.com>
	 * @param comapnyId
	 * @param reduce
	 * @param add
	 * @param change
	 *
	 */
	public void createReport(Integer comapnyId, String reduce, String add, Float change);
	
	/**
	 * 创建报表<通过来源>
	 * create by aaron.lu
	 * create at 2012-5-3 下午10:23:24
	 * <mailto: atyuan.lu@gmail.com>
	 * @param comapnyId
	 * @param reduce
	 * @param add
	 * @param change
	 *
	 */
	public void createReportWithOffice(Integer comapnyId, String reduce, String add, Float change);
	
	/**
	 * 通过各种状态的学员
	 * create by aaron.lu
	 * create at 2012-5-3 下午11:13:23
	 * <mailto: atyuan.lu@gmail.com>
	 * @return
	 *
	 */
	public List<Map<String, Object>> countStudentByProgress();
	
	/**
	 * 统计学员
	 * create by aaron.lu
	 * create at 2012-5-3 下午11:54:16
	 * <mailto: atyuan.lu@gmail.com>
	 * @param officeId
	 * @return
	 *
	 */
	public int countStudentByOffice(Integer officeId);
	
	/**
	 * 报表统计
	 * create by aaron.lu
	 * create at 2012-5-5 上午2:18:03
	 * <mailto: atyuan.lu@gmail.com>
	 * @param officeId
	 * @return
	 *
	 */
	public List<Map<String, Object>> countStudent(Integer officeId);

}
